{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## TSNE Resolve Colors Bug Documentation\n",
    "\n",
    "Jerome Massot [reports](https://github.com/DistrictDataLabs/yellowbrick/pull/658) that there is a bug in TSNE that means that colors that are passed in on instantiation do not affect the colors of the plot.\n",
    "\n",
    "In this example, we'll validate that the bug exists, and that his proposed solution works"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "import sys \n",
    "\n",
    "# Modify the path \n",
    "sys.path.append(\"..\")\n",
    "\n",
    "import pandas as pd\n",
    "import yellowbrick as yb\n",
    "import matplotlib.pyplot as plt "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Validate Bug"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "from download import download_all \n",
    "from sklearn.datasets.base import Bunch\n",
    "\n",
    "## The path to the test data sets\n",
    "FIXTURES  = os.path.join(os.getcwd(), \"data\")\n",
    "\n",
    "## Dataset loading mechanisms\n",
    "datasets = {\n",
    "    \"hobbies\": os.path.join(FIXTURES, \"hobbies\")\n",
    "}\n",
    "\n",
    "\n",
    "def load_data(name, download=True):\n",
    "    \"\"\"\n",
    "    Loads and wrangles the passed in text corpus by name.\n",
    "    If download is specified, this method will download any missing files. \n",
    "    \"\"\"\n",
    "    \n",
    "    # Get the path from the datasets \n",
    "    path = datasets[name]\n",
    "    \n",
    "    # Check if the data exists, otherwise download or raise \n",
    "    if not os.path.exists(path):\n",
    "        if download:\n",
    "            download_all() \n",
    "        else:\n",
    "            raise ValueError((\n",
    "                \"'{}' dataset has not been downloaded, \"\n",
    "                \"use the download.py module to fetch datasets\"\n",
    "            ).format(name))\n",
    "    \n",
    "    # Read the directories in the directory as the categories. \n",
    "    categories = [\n",
    "        cat for cat in os.listdir(path) \n",
    "        if os.path.isdir(os.path.join(path, cat))\n",
    "    ]\n",
    "    \n",
    "    \n",
    "    files  = [] # holds the file names relative to the root \n",
    "    data   = [] # holds the text read from the file \n",
    "    target = [] # holds the string of the category \n",
    "        \n",
    "    # Load the data from the files in the corpus \n",
    "    for cat in categories:\n",
    "        for name in os.listdir(os.path.join(path, cat)):\n",
    "            files.append(os.path.join(path, cat, name))\n",
    "            target.append(cat)\n",
    "            \n",
    "            with open(os.path.join(path, cat, name), 'r') as f:\n",
    "                data.append(f.read())\n",
    "        \n",
    "    \n",
    "    # Return the data bunch for use similar to the newsgroups example\n",
    "    return Bunch(\n",
    "        categories=categories,\n",
    "        files=files,\n",
    "        data=data,\n",
    "        target=target,\n",
    "    )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.feature_extraction.text import TfidfVectorizer\n",
    "\n",
    "corpus = load_data('hobbies')\n",
    "tfidf  = TfidfVectorizer()\n",
    "\n",
    "docs   = tfidf.fit_transform(corpus.data)\n",
    "labels = corpus.target"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from yellowbrick.text import TSNEVisualizer\n",
    "\n",
    "tsne = TSNEVisualizer(colors=[\"purple\",\"blue\",\"orchid\",\"indigo\",\"plum\",\"navy\"])\n",
    "tsne.fit(docs, labels)\n",
    "tsne.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Validate Solution"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "from collections import defaultdict\n",
    "\n",
    "from yellowbrick.draw import manual_legend\n",
    "from yellowbrick.text.base import TextVisualizer\n",
    "from yellowbrick.style.colors import resolve_colors\n",
    "from yellowbrick.exceptions import YellowbrickValueError\n",
    "\n",
    "from sklearn.manifold import TSNE\n",
    "from sklearn.pipeline import Pipeline\n",
    "from sklearn.decomposition import TruncatedSVD, PCA\n",
    "\n",
    "##########################################################################\n",
    "## Quick Methods\n",
    "##########################################################################\n",
    "\n",
    "def tsne(X, y=None, ax=None, decompose='svd', decompose_by=50, classes=None,\n",
    "           colors=None, colormap=None, alpha=0.7, **kwargs):\n",
    "    \"\"\"\n",
    "    Display a projection of a vectorized corpus in two dimensions using TSNE,\n",
    "    a nonlinear dimensionality reduction method that is particularly well\n",
    "    suited to embedding in two or three dimensions for visualization as a\n",
    "    scatter plot. TSNE is widely used in text analysis to show clusters or\n",
    "    groups of documents or utterances and their relative proximities.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "\n",
    "    X : ndarray or DataFrame of shape n x m\n",
    "        A matrix of n instances with m features representing the corpus of\n",
    "        vectorized documents to visualize with tsne.\n",
    "\n",
    "    y : ndarray or Series of length n\n",
    "        An optional array or series of target or class values for instances.\n",
    "        If this is specified, then the points will be colored according to\n",
    "        their class. Often cluster labels are passed in to color the documents\n",
    "        in cluster space, so this method is used both for classification and\n",
    "        clustering methods.\n",
    "\n",
    "    ax : matplotlib axes\n",
    "        The axes to plot the figure on.\n",
    "\n",
    "    decompose : string or None\n",
    "        A preliminary decomposition is often used prior to TSNE to make the\n",
    "        projection faster. Specify `\"svd\"` for sparse data or `\"pca\"` for\n",
    "        dense data. If decompose is None, the original data set will be used.\n",
    "\n",
    "    decompose_by : int\n",
    "        Specify the number of components for preliminary decomposition, by\n",
    "        default this is 50; the more components, the slower TSNE will be.\n",
    "\n",
    "    classes : list of strings\n",
    "        The names of the classes in the target, used to create a legend.\n",
    "\n",
    "    colors : list or tuple of colors\n",
    "        Specify the colors for each individual class\n",
    "\n",
    "    colormap : string or matplotlib cmap\n",
    "        Sequential colormap for continuous target\n",
    "\n",
    "    alpha : float, default: 0.7\n",
    "        Specify a transparency where 1 is completely opaque and 0 is completely\n",
    "        transparent. This property makes densely clustered points more visible.\n",
    "\n",
    "    kwargs : dict\n",
    "        Pass any additional keyword arguments to the TSNE transformer.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    ax : matplotlib axes\n",
    "        Returns the axes that the parallel coordinates were drawn on.\n",
    "    \"\"\"\n",
    "    # Instantiate the visualizer\n",
    "    visualizer = TSNEVisualizer(\n",
    "        ax, decompose, decompose_by, classes, colors, colormap, alpha, **kwargs\n",
    "    )\n",
    "\n",
    "    # Fit and transform the visualizer (calls draw)\n",
    "    visualizer.fit(X, y, **kwargs)\n",
    "    visualizer.transform(X)\n",
    "\n",
    "    # Return the axes object on the visualizer\n",
    "    return visualizer.ax\n",
    "\n",
    "\n",
    "##########################################################################\n",
    "## TSNEVisualizer\n",
    "##########################################################################\n",
    "\n",
    "class TSNEVisualizer(TextVisualizer):\n",
    "    \"\"\"\n",
    "    Display a projection of a vectorized corpus in two dimensions using TSNE,\n",
    "    a nonlinear dimensionality reduction method that is particularly well\n",
    "    suited to embedding in two or three dimensions for visualization as a\n",
    "    scatter plot. TSNE is widely used in text analysis to show clusters or\n",
    "    groups of documents or utterances and their relative proximities.\n",
    "\n",
    "    TSNE will return a scatter plot of the vectorized corpus, such that each\n",
    "    point represents a document or utterance. The distance between two points\n",
    "    in the visual space is embedded using the probability distribution of\n",
    "    pairwise similarities in the higher dimensionality; thus TSNE shows\n",
    "    clusters of similar documents and the relationships between groups of\n",
    "    documents as a scatter plot.\n",
    "\n",
    "    TSNE can be used with either clustering or classification; by specifying\n",
    "    the ``classes`` argument, points will be colored based on their similar\n",
    "    traits. For example, by passing ``cluster.labels_`` as ``y`` in ``fit()``, all\n",
    "    points in the same cluster will be grouped together. This extends the\n",
    "    neighbor embedding with more information about similarity, and can allow\n",
    "    better interpretation of both clusters and classes.\n",
    "\n",
    "    For more, see https://lvdmaaten.github.io/tsne/\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "\n",
    "    ax : matplotlib axes\n",
    "        The axes to plot the figure on.\n",
    "\n",
    "    decompose : string or None, default: ``'svd'``\n",
    "        A preliminary decomposition is often used prior to TSNE to make the\n",
    "        projection faster. Specify ``\"svd\"`` for sparse data or ``\"pca\"`` for\n",
    "        dense data. If None, the original data set will be used.\n",
    "\n",
    "    decompose_by : int, default: 50\n",
    "        Specify the number of components for preliminary decomposition, by\n",
    "        default this is 50; the more components, the slower TSNE will be.\n",
    "\n",
    "    labels : list of strings\n",
    "        The names of the classes in the target, used to create a legend.\n",
    "        Labels must match names of classes in sorted order.\n",
    "\n",
    "    colors : list or tuple of colors\n",
    "        Specify the colors for each individual class\n",
    "\n",
    "    colormap : string or matplotlib cmap\n",
    "        Sequential colormap for continuous target\n",
    "\n",
    "    random_state : int, RandomState instance or None, optional, default: None\n",
    "        If int, random_state is the seed used by the random number generator;\n",
    "        If RandomState instance, random_state is the random number generator;\n",
    "        If None, the random number generator is the RandomState instance used\n",
    "        by np.random. The random state is applied to the preliminary\n",
    "        decomposition as well as tSNE.\n",
    "\n",
    "    alpha : float, default: 0.7\n",
    "        Specify a transparency where 1 is completely opaque and 0 is completely\n",
    "        transparent. This property makes densely clustered points more visible.\n",
    "\n",
    "    kwargs : dict\n",
    "        Pass any additional keyword arguments to the TSNE transformer.\n",
    "    \"\"\"\n",
    "\n",
    "    # NOTE: cannot be np.nan\n",
    "    NULL_CLASS = None\n",
    "\n",
    "    def __init__(self, ax=None, decompose='svd', decompose_by=50,\n",
    "                 labels=None, classes=None, colors=None, colormap=None,\n",
    "                 random_state=None, alpha=0.7, **kwargs):\n",
    "\n",
    "        # Visual Parameters\n",
    "        self.alpha = alpha\n",
    "        self.labels = labels\n",
    "        self.colors = colors\n",
    "        self.colormap = colormap\n",
    "        self.random_state = random_state\n",
    "\n",
    "        # Fetch TSNE kwargs from kwargs by popping only keys belonging to TSNE params\n",
    "        tsne_kwargs = {\n",
    "            key: kwargs.pop(key)\n",
    "            for key in TSNE().get_params()\n",
    "            if key in kwargs\n",
    "        }\n",
    "        self.transformer_ = self.make_transformer(decompose, decompose_by, tsne_kwargs)\n",
    "\n",
    "        # Call super at the end so that size and title are set correctly\n",
    "        super(TSNEVisualizer, self).__init__(ax=ax, **kwargs)\n",
    "\n",
    "    def make_transformer(self, decompose='svd', decompose_by=50, tsne_kwargs={}):\n",
    "        \"\"\"\n",
    "        Creates an internal transformer pipeline to project the data set into\n",
    "        2D space using TSNE, applying an pre-decomposition technique ahead of\n",
    "        embedding if necessary. This method will reset the transformer on the\n",
    "        class, and can be used to explore different decompositions.\n",
    "\n",
    "        Parameters\n",
    "        ----------\n",
    "\n",
    "        decompose : string or None, default: ``'svd'``\n",
    "            A preliminary decomposition is often used prior to TSNE to make\n",
    "            the projection faster. Specify ``\"svd\"`` for sparse data or ``\"pca\"``\n",
    "            for dense data. If decompose is None, the original data set will\n",
    "            be used.\n",
    "\n",
    "        decompose_by : int, default: 50\n",
    "            Specify the number of components for preliminary decomposition, by\n",
    "            default this is 50; the more components, the slower TSNE will be.\n",
    "\n",
    "        Returns\n",
    "        -------\n",
    "\n",
    "        transformer : Pipeline\n",
    "            Pipelined transformer for TSNE projections\n",
    "        \"\"\"\n",
    "\n",
    "        # TODO: detect decompose by inferring from sparse matrix or dense or\n",
    "        # If number of features > 50 etc.\n",
    "        decompositions = {\n",
    "            'svd': TruncatedSVD,\n",
    "            'pca': PCA,\n",
    "        }\n",
    "\n",
    "        if decompose and decompose.lower() not in decompositions:\n",
    "            raise YellowbrickValueError(\n",
    "                \"'{}' is not a valid decomposition, use {}, or None\".format(\n",
    "                    decompose, \", \".join(decompositions.keys())\n",
    "                )\n",
    "            )\n",
    "\n",
    "        # Create the pipeline steps\n",
    "        steps = []\n",
    "\n",
    "        # Add the pre-decomposition\n",
    "        if decompose:\n",
    "            klass = decompositions[decompose]\n",
    "            steps.append((decompose, klass(\n",
    "                n_components=decompose_by, random_state=self.random_state)))\n",
    "\n",
    "        # Add the TSNE manifold\n",
    "        steps.append(('tsne', TSNE(\n",
    "            n_components=2, random_state=self.random_state, **tsne_kwargs)))\n",
    "\n",
    "        # return the pipeline\n",
    "        return Pipeline(steps)\n",
    "\n",
    "    def fit(self, X, y=None, **kwargs):\n",
    "        \"\"\"\n",
    "        The fit method is the primary drawing input for the TSNE projection\n",
    "        since the visualization requires both X and an optional y value. The\n",
    "        fit method expects an array of numeric vectors, so text documents must\n",
    "        be vectorized before passing them to this method.\n",
    "\n",
    "        Parameters\n",
    "        ----------\n",
    "        X : ndarray or DataFrame of shape n x m\n",
    "            A matrix of n instances with m features representing the corpus of\n",
    "            vectorized documents to visualize with tsne.\n",
    "\n",
    "        y : ndarray or Series of length n\n",
    "            An optional array or series of target or class values for\n",
    "            instances. If this is specified, then the points will be colored\n",
    "            according to their class. Often cluster labels are passed in to\n",
    "            color the documents in cluster space, so this method is used both\n",
    "            for classification and clustering methods.\n",
    "\n",
    "        kwargs : dict\n",
    "            Pass generic arguments to the drawing method\n",
    "\n",
    "        Returns\n",
    "        -------\n",
    "        self : instance\n",
    "            Returns the instance of the transformer/visualizer\n",
    "        \"\"\"\n",
    "\n",
    "        # Store the classes we observed in y\n",
    "        if y is not None:\n",
    "            self.classes_ = np.unique(y)\n",
    "        elif y is None and self.labels is not None:\n",
    "            self.classes_ = np.array([self.labels[0]])\n",
    "        else:\n",
    "            self.classes_ = np.array([self.NULL_CLASS])\n",
    "\n",
    "        # Fit our internal transformer and transform the data.\n",
    "        vecs = self.transformer_.fit_transform(X)\n",
    "        self.n_instances_ = vecs.shape[0]\n",
    "\n",
    "        # Draw the vectors\n",
    "        self.draw(vecs, y, **kwargs)\n",
    "\n",
    "        # Fit always returns self.\n",
    "        return self\n",
    "\n",
    "    def draw(self, points, target=None, **kwargs):\n",
    "        \"\"\"\n",
    "        Called from the fit method, this method draws the TSNE scatter plot,\n",
    "        from a set of decomposed points in 2 dimensions. This method also\n",
    "        accepts a third dimension, target, which is used to specify the colors\n",
    "        of each of the points. If the target is not specified, then the points\n",
    "        are plotted as a single cloud to show similar documents.\n",
    "        \"\"\"\n",
    "        # Resolve the labels with the classes\n",
    "        labels = self.labels if self.labels is not None else self.classes_\n",
    "        if len(labels) != len(self.classes_):\n",
    "            raise YellowbrickValueError((\n",
    "                \"number of supplied labels ({}) does not \"\n",
    "                \"match the number of classes ({})\"\n",
    "            ).format(len(labels), len(self.classes_)))\n",
    "\n",
    "\n",
    "        # Create the color mapping for the labels.\n",
    "        self.color_values_ = resolve_colors(\n",
    "            n_colors=len(labels), colormap=self.colormap, colors=self.colors)\n",
    "        colors = dict(zip(labels, self.color_values_))\n",
    "\n",
    "        # Transform labels into a map of class to label\n",
    "        labels = dict(zip(self.classes_, labels))\n",
    "\n",
    "        # Expand the points into vectors of x and y for scatter plotting,\n",
    "        # assigning them to their label if the label has been passed in.\n",
    "        # Additionally, filter classes not specified directly by the user.\n",
    "        series = defaultdict(lambda: {'x':[], 'y':[]})\n",
    "\n",
    "        if target is not None:\n",
    "            for t, point in zip(target, points):\n",
    "                label = labels[t]\n",
    "                series[label]['x'].append(point[0])\n",
    "                series[label]['y'].append(point[1])\n",
    "        else:\n",
    "            label = self.classes_[0]\n",
    "            for x,y in points:\n",
    "                series[label]['x'].append(x)\n",
    "                series[label]['y'].append(y)\n",
    "\n",
    "        # Plot the points\n",
    "        for label, points in series.items():\n",
    "            self.ax.scatter(\n",
    "                points['x'], points['y'], c=colors[label],\n",
    "                alpha=self.alpha, label=label\n",
    "            )\n",
    "\n",
    "    def finalize(self, **kwargs):\n",
    "        \"\"\"\n",
    "        Finalize the drawing by adding a title and legend, and removing the\n",
    "        axes objects that do not convey information about TNSE.\n",
    "        \"\"\"\n",
    "        self.set_title(\n",
    "            \"TSNE Projection of {} Documents\".format(self.n_instances_)\n",
    "        )\n",
    "\n",
    "        # Remove the ticks\n",
    "        self.ax.set_yticks([])\n",
    "        self.ax.set_xticks([])\n",
    "\n",
    "        # Add the legend outside of the figure box.\n",
    "        if not all(self.classes_ == np.array([self.NULL_CLASS])):\n",
    "            box = self.ax.get_position()\n",
    "            self.ax.set_position([box.x0, box.y0, box.width * 0.8, box.height])\n",
    "            manual_legend(\n",
    "                self, self.classes_, self.color_values_,\n",
    "                loc='center left', bbox_to_anchor=(1, 0.5)\n",
    "            )\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "tsne = TSNEVisualizer(colors=[\"purple\",\"blue\",\"orchid\",\"indigo\",\"plum\",\"navy\"])\n",
    "tsne.fit(docs, labels)\n",
    "tsne.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
